網站開發的最後一哩路,就是網站部署啦
俗話說醜媳婦總要見公婆
本篇會談到:
名詞 | 描述 |
---|---|
伺服器(Server) | 主要裝載和運行應用程式的硬體或軟體環境。 |
客戶端(Client) | 與伺服器進行互動的使用者或系統。 |
域名(Domain) | 人看得懂的名字,e.g.google.com,一個域名可以有多個 IP 地址。 |
DNS (Domain Name System) | 負責將人類可讀的域名轉換為機器可讀的 IP 地址。 |
IP地址(IP Address) | 給伺服器解讀的,Internet Protocol 設備的數字標籤。 |
網路協定(Network Protocols) | 規範網際網路上的資料傳輸和交換方式,常見的有 HTTP、HTTPS、FTP 等。 |
反向代理(Reverse Proxy) | 位於客戶端和伺服器之間,用來將客戶端請求轉發到後端伺服器,並將後端伺服器的回應返回給客戶端。 |
CDN(Content Delivery Network) | 透過在地理上分散的多個伺服器中存儲資源的副本,來減少用戶的等待時間。很多前端套件可以用 CDN 掛載的方式整合到專案裡。 |
名詞 | 描述 |
---|---|
部署環境(Deployment Environment) | 部署應用程式的特定設定和環境,如開發、測試,和生產環境。 |
配置(Configuration) | 定義應用程式和系統行為的設定檔和參數。 |
資料庫遷移(Database Migration) | 在不同資料庫環境間遷移資料庫結構和資料,通常關係 schema 的變更和數據的轉移。 |
API 和 Web 服務 | 如果應用使用了第三方 API 或 Web 服務,需要考慮安全性(如 OAuth、API 金鑰等)和限流(rate limiting)。 |
藍綠部署(Blue-Green Deployment) | 一種部署策略,有兩個完全相同的生產環境:藍色(Blue)和綠色(Green)。一個運行當前版本,另一個用於部署和測試新版本。 |
無縫部署(Zero-downtime Deployment) | 在部署過程中,用戶不會經歷服務中斷,新版本會逐漸替換舊版本。 |
名詞 | 描述 |
---|---|
版本(Version) | 應用程式或系統的特定發布狀態,通常由代碼、Configuration 和 Dependencies 組成。 |
回滾(Rollback) | 如果新版本有問題,返回到先前穩定版本的過程。 |
分支(Branch) | 隔離不同開發工作的路徑,常用於功能開發、修復漏洞或實驗。 |
名詞 | 描述 |
---|---|
持續整合(Continuous Integration) | 代碼更改會自動建置和測試,確保沒有破壞現有功能。這通常包括代碼審查、自動測試和構建。 |
持續部署(Continuous Deployment) | 代碼更改會自動部署到生產環境。 |
管道(Pipeline) | 一系列自動化的多個階段(Stages)步驟,從代碼提交到部署。這通常包括編譯、測試、部署等階段。CI/CD 就是透過管道的自動化所完成。 |
持續交付(Continuous Delivery) | 類似於持續部署,但需要手動觸發將代碼推送到生產環境。 |
構建(Build) | 將源代碼轉換為可執行代碼的過程。可能包括打包資源、生成文件等。 |
名詞 | 描述 |
---|---|
容器(Container) | 一種輕量、可移植的軟體包裝方式。 |
容器影像(Container Image) | 包含應用程式和所有依賴的靜態快照,是容器運行的基礎。 |
Docker | 目前最流行的容器平台。 |
Docker Compose | 定義和運行多容器 Docker 應用程式的工具。 |
Kubernetes | 用於自動部署、擴展和管理容器應用程式的開源平台。 |
節點(Node) | 在 Kubernetes 中,一台或多台伺服器可以被視為一個或多個節點。 |
Pod | Kubernetes 中的最小部署單位,一個或多個容器的集合。 |
服務(Service) | Kubernetes 中,暴露 Pod 網路接口的抽象層。 |
部署(Deployment) | Kubernetes 中,管理 Pod 和 Replica Set 的高級抽象層。 |
命名空間(Namespace) | Kubernetes 中,將資源分隔成獨立的環境。 |
容器註冊表(Container Registry) | 儲存容器影像的地方,例如 Docker Hub。 |
名詞 | 描述 |
---|---|
監控(Monitoring) | 實時追蹤系統和應用程式的性能和狀態。 |
日誌(Log) | 系統或應用程式運行時生成的記錄。 |
SSL/TLS | 在網際網路上保護資料傳輸的安全協議。 |
健康檢查(Health Checks) | 預設的端點或方法來確定應用或其組成元件的健康狀態。 |
防火牆(Firewall) | 控制網路流量的安全系統。 |
身份驗證(Authentication) | 確認用戶或系統的身份。 |
授權(Authorization) | 確定經過身份驗證的用戶有哪些資源的讀取權限。 |
資安事件和事故回應(Incident Response) | 一組程序,用於處理和管理資訊安全事故或違規。 |
步驟 | 描述 |
---|---|
測試 | 進行測試。 |
準備環境 | 確認環境是否符合所有硬體和軟體需求。 |
依賴安裝 | 安裝應用程式運行所需的所有依賴套件。 |
上傳程式碼 | 將應用程式的程式碼和資源檔案上傳到伺服器。 |
配置設定 | 根據環境特性進行必要的配置。 |
安全設定 | 進行必要的安全設定,如防火牆設定、SSL/TLS 設定等。 |
資料庫遷移 | 如果有資料庫更改,執行資料庫遷移。 |
啟動服務 | 啟動或重新啟動應用程式。 |
回滾計劃 | 設定和測試回滾計劃以應對可能的部署失敗。 |
監控設定 | 配置監控工具以實時追蹤應用程式和系統狀態。 |
驗證/執行 | 確認應用程式運行正常。 |
下一篇,用新興部署平台 Zeabur 部署起來!